package cn.stylefeng.guns.sys.modular.system.mapper;

import cn.stylefeng.guns.sys.modular.system.entity.Mdzx;
import cn.stylefeng.guns.sys.modular.system.model.params.MdzxParam;
import cn.stylefeng.guns.sys.modular.system.model.result.MdzxResult;
import cn.stylefeng.guns.sys.modular.system.model.result.ZxTzqkResult;
import cn.stylefeng.guns.sys.modular.system.model.result.ZxTzqkViewResult;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 门店装修表 Mapper 接口
 * </p>
 *
 * @author jiangge
 * @since 2020-11-02
 */
public interface MdzxMapper extends BaseMapper<Mdzx> {

    /**
     * 获取列表
     *
     * @author jiangge
     * @Date 2020-11-02
     */
    List<MdzxResult> customList(@Param("paramCondition") MdzxParam paramCondition);

    /**
     * 获取map列表
     *
     * @author jiangge
     * @Date 2020-11-02
     */
    List<Map<String, Object>> customMapList(@Param("paramCondition") MdzxParam paramCondition);

    List<Map<String, Object>> ghsMapList(@Param("paramCondition") MdzxParam paramCondition);

    /**
     * 获取分页实体列表
     *
     * @author jiangge
     * @Date 2020-11-02
     */
    Page<MdzxResult> customPageList(@Param("page") Page page, @Param("paramCondition") MdzxParam paramCondition);



    /**
     * 获取分页map列表
     *
     * @author jiangge
     * @Date 2020-11-02
     */
    Page<Map<String, Object>> customPageMapList(@Param("page") Page page, @Param("paramCondition") MdzxParam paramCondition);

    MdzxResult findBySpec(@Param("paramCondition") MdzxParam param);


    List<ZxTzqkViewResult> selectAllTzqkYiji(@Param("btyZxMdzxId") Long btyZxMdzxId);

    List<ZxTzqkViewResult> selectAllTzqkErji(@Param("btyZxMdzxId") Long btyZxMdzxId);

    //查询装修店名
    Mdzx selectDm(@Param("btyZxMdzxId") Long btyZxMdzxId);


    MdzxResult selectOneByParam(@Param("param") MdzxParam paramCondition);

    Integer getMaxXuhaoByMdId(@Param("btyZxMdzxId") Long btyZxMdzxId);

    List<Map<String,Object>> listMingxiDetail(@Param("param") MdzxParam param);

    String getMdzxId(@Param("yaoma") String yaoma);

    List<ZxTzqkResult>mdList(@Param("btyZxMdzxId") Long btyZxMdzxId);

    List<MdzxResult>ghsList();

    Page<MdzxResult> dzList(@Param("page") Page page, @Param("paramCondition") MdzxParam param);

    List<MdzxResult> dzExportList(@Param("paramCondition") MdzxParam param);

    List<MdzxResult>listJgcDetail(@Param("btyZxMdzxId") Long btyZxMdzxId);

    List<MdzxResult>ghsLockList(@Param("btyZxMdzxId") Long btyZxMdzxId);

    int getName(@Param("btyBrandIdView") String btyBrandIdView);
}
